home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-06-24 | 2.7 KB | 103 lines | [TEXT/MPS ] |
- // HackMenu.cp
- // Copyright © 1994-95 by Apple Computer, Inc. All rights reserved.
-
- #ifndef __HACKMENU__
- #include "HackMenu.h"
- #endif
-
- // MacApp
-
- #ifndef __UVIEWSERVER__
- #include "UViewServer.h"
- #endif
-
- #ifndef __UWINDOW__
- #include "UWindow.h"
- #endif
-
- #ifndef __UMACAPPUTILITIES__
- #include "UMacAppUtilities.h"
- #endif
-
- //========================================================================================
- // CLASS THackMenu
- //========================================================================================
- #undef Inherited
- #define Inherited TTearOffMenuView
-
- #pragma segment AInit
- MA_DEFINE_CLASS_M1(THackMenu, Inherited);
-
- //----------------------------------------------------------------------------------------
- // THackMenu Constructor
- //----------------------------------------------------------------------------------------
- #pragma segment AInit
-
- THackMenu::THackMenu()
- {
- }
-
- //----------------------------------------------------------------------------------------
- // THackMenu::IHackMenu
- //----------------------------------------------------------------------------------------
- #pragma segment AInit
-
- void THackMenu::IHackMenu(ResNumber menuID, ResNumber windowID)
- {
- TWindow* window = gViewServer->NewTemplateWindow(windowID, NULL);
- FailNIL(window);
- TView* palette = window->FirstSubView();
- FailNonObject(palette);
- window->RemoveSubView(palette);
- palette->fLocation = gZeroVPt;
- window = (TWindow*) FreeIfObject(window);
-
- window = gViewServer->NewTemplateWindow(windowID, NULL);
-
- this->ITearOffMenuView(menuID, palette->fSize.h, palette->fSize.v, window);
-
- this->AddSubView(palette);
- }
-
- //========================================================================================
- // CLASS THackView
- //========================================================================================
- #undef Inherited
- #define Inherited TView
-
- #pragma segment AInit
- MA_DEFINE_CLASS_M1(THackView, Inherited);
-
- //----------------------------------------------------------------------------------------
- // THackView Constructor
- //----------------------------------------------------------------------------------------
- #pragma segment AInit
-
- THackView::THackView()
- {
- }
-
- //----------------------------------------------------------------------------------------
- // THackView::IHackMenu
- //----------------------------------------------------------------------------------------
- #pragma segment AInit
-
- void THackView::DoEvent(EventNumber eventNumber,
- TEventHandler* source,
- TEvent* event) // override
- {
- if (eventNumber == mButtonHit)
- {
- TWindow* window = GetWindow();
- if (window)
- {
- TCloseWindowCommand* closer = new TCloseWindowCommand;
- closer->ICloseWindowCommand(cClose, window);
- PostCommand(closer);
- }
- }
- else
- Inherited::DoEvent(eventNumber, source, event);
- }
-
-